<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>gl_FrontFacing - OpenGL 4 Reference Pages</title>
    <link rel="stylesheet" type="text/css" href="opengl-man.css"/>
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"/>
    <script type="text/x-mathjax-config">
            MathJax.Hub.Config({
                MathML: {
                    extensions: ["content-mathml.js"]
                },
                tex2jax: {
                    inlineMath: [['$','$'], ['\\(','\\)']]
                }
            });
        </script>
    <script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"/>
  </head>
  <body>
    <header/>
    <div class="refentry" id="gl_FrontFacing">
      <div class="titlepage"/>
      <div class="refnamediv">
        <h2>Name</h2>
        <p>gl_FrontFacing — indicates whether a primitive is front or back facing</p>
      </div>
      <div class="refsynopsisdiv">
        <h2>Declaration</h2>
        <code class="fieldsynopsis"><span class="modifier">in </span><span class="type">bool </span><span class="varname">gl_FrontFacing </span>;</code>
      </div>
      <div class="refsect1" id="description">
        <h2>Description</h2>
        <p>
            Available only in the fragment language, <code class="varname">gl_FrontFacing</code> is an input variable
            whose value is <code class="function">true</code> if the fragment belongs to a front-facing primitive and
            false otherwise. The determination of whether a triangle primitive is front-facing is made by
            examining the sign of the area of the triangle, including a possible reversal of this sign
            as controlled by <code class="varname">glFrontFace</code>. One way to compute this area is:
        </p>
        <p>
            <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
                <mml:mi>a</mml:mi><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mn>2</mml:mn></mml:mfrac>
                <mml:msubsup>
                    <mml:mo>∑</mml:mo>
                    <mml:mrow>
                        <mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn>
                    </mml:mrow>
                    <mml:mrow>
                        <mml:mi>n</mml:mi><mml:mo>-</mml:mo><mml:mn>1</mml:mn>
                    </mml:mrow>
                </mml:msubsup>
                <mml:msubsup>
                    <mml:mi>x</mml:mi>
                    <mml:mrow><mml:mi>w</mml:mi></mml:mrow>
                    <mml:mrow><mml:mi>i</mml:mi></mml:mrow>
                </mml:msubsup>
                <mml:msubsup>
                    <mml:mi>y</mml:mi>
                    <mml:mrow><mml:mi>w</mml:mi></mml:mrow>
                    <mml:mrow><mml:mi>i</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow>
                </mml:msubsup>
                <mml:mo>-</mml:mo>
                <mml:msubsup>
                    <mml:mi>x</mml:mi>
                    <mml:mrow><mml:mi>w</mml:mi></mml:mrow>
                    <mml:mrow><mml:mi>i</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow>
                </mml:msubsup>
                <mml:msubsup>
                    <mml:mi>y</mml:mi>
                    <mml:mrow><mml:mi>w</mml:mi></mml:mrow>
                    <mml:mrow><mml:mi>i</mml:mi></mml:mrow>
                </mml:msubsup>
            </mml:math>
        </p>
        <p>
            where
            <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
                <mml:msubsup>
                    <mml:mi>x</mml:mi>
                    <mml:mrow><mml:mi>w</mml:mi></mml:mrow>
                    <mml:mrow><mml:mi>i</mml:mi></mml:mrow>
                </mml:msubsup>
            </mml:math> and
            <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll">
                <mml:msubsup>
                    <mml:mi>y</mml:mi>
                    <mml:mrow><mml:mi>w</mml:mi></mml:mrow>
                    <mml:mrow><mml:mi>i</mml:mi></mml:mrow>
                </mml:msubsup>
            </mml:math> are
            the x and y window coordinates of the <span class="emphasis"><em>i</em></span>th vertex of the n-vertex polygon.
        </p>
        <p>
            The sign of this computation is negated when the value of
            <code class="constant">GL_CLIP_ORIGIN</code> (the clip volume origin, set
            with
            <a class="citerefentry" href="glClipControl.xhtml"><span class="citerefentry"><span class="refentrytitle">glClipControl</span></span></a>)
            is <code class="constant">GL_UPPER_LEFT</code>.
        </p>
      </div>
      <div class="refsect1" id="versions">
        <h2>Version Support</h2>
        <div class="informaltable">
          <table style="border-collapse: collapse; border-top: 2px solid ; border-bottom: 2px solid ; border-left: 2px solid ; border-right: 2px solid ; ">
            <colgroup>
              <col style="text-align: left; "/>
              <col style="text-align: center; " class="firstvers"/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; "/>
              <col style="text-align: center; " class="lastvers"/>
            </colgroup>
            <thead>
              <tr>
                <th style="text-align: left; border-right: 2px solid ; ">
                 
            </th>
                <th style="text-align: center; border-bottom: 2px solid ; " colspan="12">
                <span class="bold"><strong>OpenGL Shading Language Version</strong></span>
            </th>
              </tr>
              <tr>
                <th style="text-align: left; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>Variable Name</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>1.10</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>1.20</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>1.30</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>1.40</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>1.50</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>3.30</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>4.00</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>4.10</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>4.20</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>4.30</strong></span>
            </th>
                <th style="text-align: center; border-right: 2px solid ; border-bottom: 2px solid ; ">
                <span class="bold"><strong>4.40</strong></span>
            </th>
                <th style="text-align: center; border-bottom: 2px solid ; ">
                <span class="bold"><strong>4.50</strong></span>
            </th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td style="text-align: left; border-right: 2px solid ; ">gl_FrontFacing</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; border-right: 2px solid ; ">✔</td>
                <td style="text-align: center; ">✔</td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <div class="refsect1" id="seealso">
        <h2>See Also</h2>
        <p>
            <a class="citerefentry" href="gl_FragCoord.xhtml"><span class="citerefentry"><span class="refentrytitle">gl_FragCoord</span></span></a>,
            <a class="citerefentry" href="glClipControl.xhtml"><span class="citerefentry"><span class="refentrytitle">glClipControl</span></span></a>
        </p>
      </div>
      <div class="refsect1" id="Copyright">
        <h2>Copyright</h2>
        <p>
            Copyright <span class="trademark"/>© 2011-2014 Khronos Group.
            This material may be distributed subject to the terms and conditions set forth in
            the Open Publication License, v 1.0, 8 June 1999.
            <a class="link" href="http://opencontent.org/openpub/" target="_top">http://opencontent.org/openpub/</a>.
        </p>
      </div>
    </div>
    <footer/>
  </body>
</html>
